1. Field of the Invention
The present invention pertains to recording and recovery of information on a storage medium, and particularly to apparatus and methods of counteracting recovery problems possibly resulting from consequences of run length limited (RLL) encoding.
2. Related Art and Other Considerations
Data storage devices, which are used in both short- and long-term capacities, are an integral part of modern computer systems. While factors such as costs, device form factor, storage media size and capacity, and recording and recovery times are of high importance, of primary concern is the ability to maintain data integrity.
Accordingly, many tape drives include a check-after-write scheme whereby data is verified by a read head as the data is recorded onto the tape. For example, in a helical scan tape drive, in which data is written in tracks in an alternate-azimuth helical pattern by a pair alternate azimuth adjacent write heads mounted on a rotating drum, the newly recorded data is verified half a drum rotation later by a pair of alternate azimuth read heads located 180 degrees relative to the pair of write heads. Examples of sophisticated helical scan recording/reproducing are found in the following (all of which are incorporated by reference in their entirety): U.S. Pat. No. 6,367,047 to McAuliffe et al.; U.S. Pat. No. 6,367,048 to McAuliffe et al.; U.S. Pat. No. 6,603,618 to McAuliffe et al.; and U.S. Pat. No. 6,381,706 to Zaczek; U.S. Pat. No. 6,421,805 to McAuliffe et al.; U.S. Pat. No. 6,308,298 to Blatchley et al.; U.S. Pat. No. 6,307,701 to Beavers et al.; and, U.S. Pat. No. 6,246,551 to Blatchley et al.
Whenever a check-after-write (CAW) failure occurs, in some drives the write operation is suspended and the tape is repositioned backwards to allow enough space to accelerate again to the forward operating speed, and the track containing the “failed” data is overwritten by a new track on which the “failed” data is attempted to be rewritten. The failed data had to be rewritten before data which followed it in address sequence could be recorded onto the tape due to the format requirement calling for recording in-sequence.
The prior art backhitching sequence for rewriting “bad” data is problematic. First, the time required for a backhitching cycle increases data recording time and delays the host system by causing an interruption if data from the host had achieve a maximum throughput “streaming” mode. In addition, because backhitching induces extremely high transient forces that greatly increase tape wear and reduce the mechanical reliability of the drive, the backhitch operation can seriously impact data reliability.
The backhitching sequence can be avoided by simply rewriting tracks that contain “bad” data further down the tape without stopping the process. However, this methodology has the disadvantage that if the rewrite count is high, a significant portion of the tape is occupied by duplicate tracks containing mainly redundant “good” data, thereby reducing the storage capacity of the tape.
Techniques for rewriting data that was considered bad or problematic after a check after write operation are described in one or more of the following: U.S. Pat. No. 5,050,018 to Georgis; U.S. Pat. No. 5,191,491 to Zweighaft; U.S. Pat. No. 5,349,481 to Kauffman et al.; U.S. Pat. No. 6,134,072 to Zweighaft; and U.S. Pat. No. 6,381,706 to Zaczek, all of which are incorporated herein by reference.
Data recorded on a storage medium is typically run length limited (RLL) encoded, e.g., by a (0,6) RLL code, for example. RLL is a data encoding method where data bits are encoded so that certain constraints are met with regard to the maximum and minimum distances between flux transitions. Thus, encoding provides a specific sequence of ones and zeroes over a specific time period. When looked at in the frequency domain, several RLL sequences have different frequency content.
When a packet of data is recorded on a storage medium, the frequency content is dependent on the data encoding technique and the actual user data content of the packet. In certain cases, the frequency content of the resulting write signal may create a low probability that the packet can be read back successfully. Packets with this characteristic can thus be considered as problematic packets. This is because rewriting a problematic packet the exact same way will have a low probability of being read successfully during a check after write operation.
The problematic packet conflicts with the perfect packet check after write requirement since some packets will never pass the check after write process regardless of how many times they are recorded. This may create a situation in which a write session will never be successfully completed when a problematic packet is encountered.
It is known in the prior art, prior to the recording of data on the storage medium, to modify the coded characters using a special randomizer circuit. The randomizer typically employs a data randomizer algorithm expressed as a generator polynomial. Examples of data randomization prior to encoding including U.S. Pat. No. 5,991,911 to Zook; U.S. Pat. No. 5,815,514 to Gray; and U.S. Pat. No. 6,363,512 to Gray.
What is needed, therefore, and an object of the present invention, is a technique for increasing the probability that a problematic packet will successfully pass a check after write process on one or more subsequent rewrites.